string literalの判定
K extends ${infer _}を使う
どちらかと言うと、こっちのほうが良い気がするmrsekut.icon
code:ts
type isStringLiteral<T> = T extends ${infer _} ? true : false;
type A1 = isStringLiteral<'foo'>; // true
type A2 = isStringLiteral<2>; // false
type A3 = isStringLiteral<string>; // false
type A4 = isStringLiteral<number>; // false
type A5 = isStringLiteral<s: string>; // false